// pages/food/food.js
import { getfoodclass, getfood, getrecommendfood, searchfood, likefood, addlikefood, cancelfood, addshop, getshop, changeshop,deshop} from "../../api/api"
Page({

    /**
     * 页面的初始数据
     */
    data: {
        nav:[],
        list:[],
        sum:0,
        n:0
    },
    // 获取菜品信息
    getfood1(id){
        getfood(`${id}`, 1).then(res=>{
            // console.log(res);
            if(res.data.message == '暂无数据！'){
                this.setData({
                    list: []
                })
            }else if(res.data.status == 0){
                res.data.data.forEach(value=>{
                    value.islike = false
                    value.num = 0
                })
                var list1 = res.data.data
                // console.log(list1);
                 // 获取购物车菜品信息
                getshop().then(b=>{
                    if(b.data.status == 0){
                        if(b.data.data.length > 0){
                            var d = 0
                            b.data.data.forEach(value=>{
                               d = d + value.num
                            })
                            this.setData({
                                n : d
                            })
                            for(var i = 0 ; i<list1.length; i++){
                                for(var j =0;j<b.data.data.length;j++){
                                    if(list1[i].food_id == b.data.data[j].food_id){
                                        list1[i].num = b.data.data[j].num
                                    }
                                }
                            }
                        }
                    }
                })
                // 获取喜欢的菜品
                likefood().then(a=>{
                    console.log(a);
                    if(a.data.status == 0){
                        if(a.data.data.length > 0){
                            for(var i = 0 ; i<list1.length; i++){
                                for(var j =0;j<a.data.data.length;j++){
                                    if(list1[i].food_id == a.data.data[j].food_id){
                                        list1[i].islike = true
                                    }
                                }
                            }
                        }
                    }
                    this.setData({
                        list: list1
                    })
                })
               
                // console.log(this.data.list);
            }
            
        })
    },
    // 切换菜品信息
    change(e){
        // console.log(e);
        this.getfood1(`${e.currentTarget.dataset.id}`)
        this.setData({
            sum:e.currentTarget.dataset.id
        })
    },
    // 获取推荐菜品信息
    get(){
        getrecommendfood(1).then(res=>{
            // console.log(res);
            if(res.data.status == 0){
                res.data.data.forEach(value=>{
                    value.islike = false
                    value.num = 0
                })
                var list1 = res.data.data
                // console.log(list1);
                // 获取购物车菜品信息
                getshop().then(b=>{
                    if(b.data.status == 0){
                        if(b.data.data.length > 0){
                            var d = 0
                            b.data.data.forEach(value=>{
                               d = d + value.num
                            })
                            this.setData({
                                n : d
                            })
                            for(var i = 0 ; i<list1.length; i++){
                                for(var j =0;j<b.data.data.length;j++){
                                    if(list1[i].food_id == b.data.data[j].food_id){
                                        list1[i].num = b.data.data[j].num
                                    }
                                }
                            }
                        }
                    }
                })
                // 获取喜欢的菜品
                likefood().then(a=>{
                    // console.log(a);
                    if(a.data.status == 0){
                        if(a.data.data.length > 0){
                            for(var i = 0 ; i<list1.length; i++){
                                for(var j =0;j<a.data.data.length;j++){
                                    if(list1[i].food_id == a.data.data[j].food_id){
                                        list1[i].islike = true
                                    }
                                }
                            }
                        }
                    }
                    this.setData({
                        list: list1
                    })
                })
            }
        })
    },
    recommend(){
        this.get()
        this.setData({
            sum:0
        })
    },
    // 添加购物车
    add(e){
        // console.log(e);
        if(e.currentTarget.dataset.num == 0){
            addshop(
                `${e.currentTarget.dataset.food_id}`,
                `${e.currentTarget.dataset.name}`,
                1,
                `${e.currentTarget.dataset.price}`
                ).then(res=>{
                    // console.log(res);
                    if(this.data.sum == 0){
                        this.get()
                    }else {
                        this.getfood1(this.data.sum)
                    }
                })
        }else{
            e.currentTarget.dataset.num++
            e.currentTarget.dataset.price = e.currentTarget.dataset.price * e.currentTarget.dataset.num
            // console.log(e.currentTarget.dataset.num);
            // console.log(e.currentTarget.dataset.price);
            changeshop(
                `${e.currentTarget.dataset.food_id}`,
                `${e.currentTarget.dataset.name}`,
                `${e.currentTarget.dataset.num}`,
                `${e.currentTarget.dataset.price}`
            ).then(res=>{
                // console.log(res);
                if(this.data.sum == 0){
                    this.get()
                }else {
                    this.getfood1(this.data.sum)
                }
            })
        } 
    },
    // 去结算页面
    add1(){
         // 获取购物车数据
         getshop().then(res=>{
            // console.log(res);
            if(res.data.data.length != 0){
                wx.navigateTo({
                    url: '../shop/shop',
                  })
            }else {
                wx.showToast({
                    title: '请选择购买的菜品',
                    icon: 'none'
                })
            }
        })
    },
    // 删除购物车
    mydelete(e){
        if(e.currentTarget.dataset.num == 1){
            deshop(
                `${e.currentTarget.dataset.food_id}`,
                ).then(res=>{
                    // console.log(res);
                    if(this.data.sum == 0){
                        this.get()
                    }else {
                        this.getfood1(this.data.sum)
                    }
                })
            }else{
                e.currentTarget.dataset.num--
                e.currentTarget.dataset.price = e.currentTarget.dataset.price * e.currentTarget.dataset.num
                // console.log(e.currentTarget.dataset.num);
                // console.log(e.currentTarget.dataset.price);
                changeshop(
                    `${e.currentTarget.dataset.food_id}`,
                    `${e.currentTarget.dataset.name}`,
                    `${e.currentTarget.dataset.num}`,
                    `${e.currentTarget.dataset.price}`
                ).then(res=>{
                    // console.log(res);
                    if(this.data.sum == 0){
                        this.get()
                    }else {
                        this.getfood1(this.data.sum)
                    }
                })
            }
    },
    // 添加喜欢的菜品
    collection(e){
        // console.log(e);
        addlikefood(`${e.currentTarget.dataset.id}`, `${e.currentTarget.dataset.name}`).then(res=>{
            if(res.data.status == 0){
                wx.showToast({
                    title: '已收藏',
                    icon: 'none'
                })
            }
            if(this.data.sum == 0){
                this.get()
            }else {
                this.getfood1(this.data.sum)
            }
        })
        
    },
    // 取消收藏
    quxiao(e){
        cancelfood(`${e.currentTarget.dataset.id}`).then(res=>{
            if(res.data.status == 0){
                wx.showToast({
                    title: '取消成功',
                    icon: 'none'
                })
            }
            if(this.data.sum == 0){
                this.get()
            }else {
                this.getfood1(this.data.sum)
            }
        })
    },
    // 搜索
    search(e){
        // console.log(e);
        searchfood(e.detail.value).then(res=>{
            console.log(res);
            this.setData({
                list: res.data.data,
                sum: res.data.data[0].classification_id
            })
        })
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        // 未登录
        if(!wx.getStorageSync('token')){
            wx.reLaunch({
                url: '../mine/mine',
              })
        }
        // 获取菜品分类
        getfoodclass().then(res=>{
            // console.log(res);
            if(res.data.status == 0){
                this.setData({
                    nav:res.data.data
                })
            }
        })
        // 获取推荐菜品
        this.get()
        // 获取购物车数据
        getshop().then(res=>{
            // console.log(res);
            if(res.data.data.length == 0){
                this.setData({
                    n:0
                })
            }
        })
        
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})